{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/scripts/landingpage.ts"],"names":["enumerable","get","getter","value","key","bind","module","Object","prototype","hasOwnProperty","call","object","property","doLandingPageTracking","category","action","label","window","ga","create","addEventListener","e","queryString","urlParams","utmSource","utmMedium","utmCampaign","location","search","URLSearchParams","eventAction","document","querySelectorAll","i","length","_this","currentTarget","dataset","trackingevent","textContent","initEventTracking","event","details","detail","ctaBtn","href","getAttribute","ctaForm","querySelector","offY","getBoundingClientRect","top","scrollY","scrollTo","left","behavior"],"mappings":"aACA,SAGA,cAGA,QACA,oBAGA,YACA,IACA,KACA,YAUA,OANA,mCAGA,OAGA,UAKA,MAGA,MAGA,oBACA,UACA,2BAA2CA,YAAY,EAAMC,IAAKC,KAKlE,gBACA,gDACA,4CAAyDC,MAAO,WAEhE,sCAAkDA,OAAO,KAQzD,kBAEA,GADA,cACA,aACA,qDACA,0BAGA,GAFA,OACA,mCAA0CH,YAAY,EAAMG,MAAOA,IACnE,2DAAiH,OAAOA,EAAMC,IAAQC,KAAK,KAAMD,IACjJ,UAIA,gBACA,sBACA,WAA4B,OAAOE,EAAgB,SACnD,WAAkC,OAAOA,GAEzC,OADA,aACA,GAIA,kBAAuD,OAAOC,OAAOC,UAAUC,eAAeC,KAAKC,EAAQC,IAG3G,OAIA,S,wEChFA,WA0DE,SAASC,EAAuBC,EAAkBC,EAAgBC,GAC5DC,OAAeC,IAAMA,GAAGC,QAC1BD,GAAG,YAAa,QAASJ,EAAUC,EAAQC,GA3D/CC,OAAOG,iBAAiB,QAAQ,SAASC,GA8BzC,IACQC,EACAC,EAEAC,EACAC,EACAC,EALAJ,EAAcL,OAAOU,SAASC,OAC9BL,EAAY,IAAIM,gBAAgBP,GAEhCE,EAAYD,EAAUtB,IAAI,cAC1BwB,EAAYF,EAAUtB,IAAI,cAC1ByB,EAAcH,EAAUtB,IAAI,gBAEjB,OAAduB,GAAoC,OAAdC,GAAsC,OAAhBC,GAC7Cb,EAAsB,eAAgBW,EAAWE,GAIrD,WAGE,IAFA,IAAMI,EAAcC,SAASC,iBAAiB,wBAEtCC,EAAI,EAAGA,EAAIH,EAAYI,OAAQD,IACrCH,EAAYG,GAAGb,iBAAiB,SAAS,SAACC,GACxC,IAAMc,EAASd,EAAEe,cAIjBvB,EAAsB,eAHPsB,EAAME,QAAQC,cACfH,EAAMI,gBAhDxBC,GAsBAT,SAASX,iBAAiB,mBAAmB,SAASqB,GACpD,IAAMC,EAAWD,EAAcE,OAC/B9B,EAAsB6B,EAAQ5B,SAAU4B,EAAQ3B,OAAQ2B,EAAQ1B,UArBlEH,EAAsB,eAAgB,QAAS,IAG/C,IADA,IAAM+B,EAASb,SAASC,iBAAiB,QACjCC,EAAI,EAAGA,EAAIW,EAAOV,OAAQD,IAChCW,EAAOX,GAAGb,iBAAiB,SAAS,SAACC,GACnC,IACMwB,EADSxB,EAAEe,cACEU,aAAa,QAC1BC,EAAUhB,SAASiB,cAAc,aAEvC,GAAW,aAARH,GAAmC,OAAZE,EAAkB,CAC1C,IAAME,EAAOF,EAAQG,wBAAwBC,IAAMlC,OAAOmC,QAE1DnC,OAAOoC,SAAS,CAAEF,IAAKF,EAAO,IAAKK,KAAM,EAAGC,SAAU,kBAlBhE","file":"landingpage.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","// TODO: don't replace onload\r\n\r\n(function () {\r\n window.addEventListener('load', function(e) {\r\n initUrlTracking();\r\n initEventTracking();\r\n initMobiusFormTracking();\r\n\r\n doLandingPageTracking('landing-page', 'visit', '');\r\n \r\n const ctaBtn = document.querySelectorAll('.cta');\r\n for(var i = 0; i < ctaBtn.length; i++) {\r\n ctaBtn[i].addEventListener(\"click\", (e) => {\r\n const _this = (e.currentTarget as HTMLElement);\r\n const href = _this.getAttribute('href');\r\n const ctaForm = document.querySelector('.cta-form');\r\n\r\n if(href == \"#cta-form\" && ctaForm !== null) {\r\n const offY = ctaForm.getBoundingClientRect().top + window.scrollY;\r\n \r\n window.scrollTo({ top: offY - 100, left: 0, behavior: \"smooth\" })\r\n }\r\n })\r\n }\r\n })\r\n\r\n function initMobiusFormTracking() {\r\n document.addEventListener(\"trackMobiusForm\", function(event) {\r\n const details = (event as any).detail;\r\n doLandingPageTracking(details.category, details.action, details.label);\r\n });\r\n }\r\n\r\n function initUrlTracking() {\r\n const queryString = window.location.search;\r\n const urlParams = new URLSearchParams(queryString);\r\n\r\n const utmSource = urlParams.get('utm_source');\r\n const utmMedium = urlParams.get('utm_medium');\r\n const utmCampaign = urlParams.get('utm_campaign');\r\n\r\n if(utmSource !== null && utmMedium !== null && utmCampaign !== null) {\r\n doLandingPageTracking('landing-page', utmSource, utmCampaign);\r\n }\r\n }\r\n\r\n function initEventTracking() {\r\n const eventAction = document.querySelectorAll('[data-trackingevent]');\r\n \r\n for(var i = 0; i < eventAction.length; i++) {\r\n eventAction[i].addEventListener(\"click\", (e) => {\r\n const _this = (e.currentTarget as HTMLElement);\r\n const action = _this.dataset.trackingevent;\r\n const label = _this.textContent;\r\n\r\n doLandingPageTracking('landing-page', action, label);\r\n })\r\n }\r\n }\r\n\r\n function doLandingPageTracking (category: string, action: string, label: string) {\r\n if((window as any).ga && ga.create) {\r\n ga('gtm1.send', 'event', category, action, label);\r\n }\r\n }\r\n})();"],"sourceRoot":""}